package com.upay.android.domain.account;

import java.io.Serializable;

import org.apache.commons.lang.builder.ToStringBuilder;

import com.upay.android.domain.user.User;

public class UserAccount implements Serializable {

	/* ---- Constants ---- */
	private static final long serialVersionUID = 201203032116L;
	
	/* ---- Instance Variables ----*/

	private String userName = null;
	private String password = null;
	private User user = null;
	
	/* ---- Constructors ---- */
	
	public UserAccount() {
		super();
	}
	
	public UserAccount(
		String userName,
		String password,
		User user) {
		this.userName = userName;
		this.password = password;
		this.user = user;
	}
		
	/* ---- Business Methods ---- */
	
    public String toString() {
    	return new ToStringBuilder(this)
            .appendSuper(super.toString())
            .append("userName", userName)
    		.append("password", password)
    		.append("user", user.toString())
            .toString();
    }

	/* ---- Getters and Setters ----*/
	
	/**
	 * @return the userName
	 */
	public String getUserName() {
		return userName;
	}

	/**
	 * @param userName the userName to set
	 */
	public void setUserName(String userName) {
		this.userName = userName;
	}

	/**
	 * @return the password
	 */
	public String getPassword() {
		return password;
	}

	/**
	 * @param password the password to set
	 */
	public void setPassword(String password) {
		this.password = password;
	}

	/**
	 * @return the user
	 */
	public User getUser() {
		return user;
	}

	/**
	 * @param user the user to set
	 */
	public void setUser(User user) {
		this.user = user;
	}	
	
}
